package cn.amos.core.business;

import cn.amos.dao.entity.UserEntity;
import cn.amos.facade.request.UserForm;

/**
 * @author DaoyuanWang
 */
public interface UserBusiness {

    /**
     * 注册一个用户
     *
     * @param userForm 用户表单
     */
    String register(UserForm userForm);

    /**
     * 用户登录
     *
     * @param userForm 用户表单
     * @return 用户实体
     */
    UserEntity login(UserForm userForm);

    /**
     * 检查用户名是否存在
     *
     * @param name 用户名
     * @return true 存在; false 不存在
     */
    boolean existUser(String name);

    /**
     * 更新用户信息
     *
     * @param userForm 用户表单
     */
    void update(UserForm userForm);

    /**
     * 更新用户密码
     *
     * @param userForm 用户表单
     * @return 更新状态
     */
    String updatePwd(UserForm userForm);
}
